<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core">
    <ui:composition template="/pages/core/plantilla/plantillaPrincipal.xhtml">
        <ui:define name="contenido">
            <h:form id="frmPrincipal">
                <p:panel id="pnlPrincipal" header="EMPRESA / #{empresaMBean.titulo}" style="#{applicationMBean.estiloTitulo}">
                    <p:fieldset legend="DATOS DE LA EMPRESA" styleClass="label">
                        <h:panelGrid columns="8" cellpadding="4">
                            <h:outputLabel value="USUARIO" styleClass="label" rendered="#{empresaMBean.accion != 1}"/>
                            <h:outputText value="#{empresaMBean.empresa.usuario.usuario}" styleClass="label" rendered="#{empresaMBean.accion != 1}"/>

                            <h:outputLabel for="itRazonSocial" value="RAZÓN SOCIAL" styleClass="label"/>
                            <p:inputText id="itRazonSocial" label="RAZÓN SOCIAL" maxlength="100" value="#{empresaMBean.empresa.razonSocial}"
                                         readonly="#{empresaMBean.accion == 3}" required="true" size="50" styleClass="txtCampoObligatorio">
                                <f:validateLength minimum="0" maximum="100"/>
                            </p:inputText>

                            <h:outputLabel for="itRuc" value="RUC" styleClass="label"/>
                            <p:inputText id="itRuc" value="#{empresaMBean.empresa.ruc}" onkeypress="return fn_validaTecla('entero', this)"
                                         styleClass="txtCampoObligatorio" size="30" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="30"/>
                            </p:inputText>

                            <h:outputLabel for="itDirEmpresa" value="DIRECCIÓN EMPRESA" styleClass="label"/>
                            <p:inputText id="itDirEmpresa" value="#{empresaMBean.empresa.direccionEmpresa}"
                                         styleClass="txtCampoObligatorio" size="50" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="50"/>
                            </p:inputText>

                            <h:outputLabel for="itTelEmpresa" value="TELÉFONO EMPRESA" styleClass="label"/>
                            <p:inputText id="itTelEmpresa" value="#{empresaMBean.empresa.telefonoEmpresa}" onkeypress="return fn_validaTecla('entero', this)"
                                         styleClass="txtCampoObligatorio" size="30" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="30"/>
                            </p:inputText>

                            <h:outputLabel for="itEmailEmpresa" value="E-MAIL EMPRESA" styleClass="label"/>
                            <p:inputText id="itEmailEmpresa" value="#{empresaMBean.empresa.emailEmpresa}"
                                         styleClass="txtCampoObligatorio" size="40" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="50"/>
                            </p:inputText>

                            <h:outputLabel for="itNroTrabajadores" value="NRO TRABAJADORES" styleClass="label"/>
                            <h:outputText id="itNroTrabajadores" value="#{empresaMBean.empresa.nroTrabajadores}" styleClass="label"/>

                            <h:outputLabel for="itFechCreacion" value="FECHA CREACIÓN" styleClass="label"/>
                            <h:outputText id="itFechCreacion" value="#{empresaMBean.empresa.fechaCreacion}" styleClass="label">
                                <f:convertDateTime pattern="#{applicationMBean.formatoFechaHora}"  timeZone="#{applicationMBean.timeZone}"/> 
                            </h:outputText>

                            <h:outputLabel for="itEstado" value="ESTADO" styleClass="label"/>
                            <h:outputText id="itEstado" value="#{empresaMBean.empresa.estadoTexto}" style="#{empresaMBean.empresa.inlineStyle}"/>
                        </h:panelGrid>
                    </p:fieldset>
                    <br/>
                    <p:fieldset legend="DATOS DEL REPRESENTANTE" styleClass="label">
                        <h:panelGrid columns="8" cellpadding="4">
                            <h:outputLabel for="itNombres" value="NOMBRES" styleClass="label"/>
                            <p:inputText id="itNombres" value="#{empresaMBean.empresa.nombres}"
                                         styleClass="txtCampoObligatorio" size="50" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="50"/>
                            </p:inputText>

                            <h:outputLabel for="itApPaterno" value="APELLIDO PATERNO" styleClass="label"/>
                            <p:inputText id="itApPaterno" value="#{empresaMBean.empresa.apPaterno}"
                                         styleClass="txtCampoObligatorio" size="30" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="30"/>
                            </p:inputText>

                            <h:outputLabel for="itApMaterno" value="APELLIDO MATERNO" styleClass="label"/>
                            <p:inputText id="itApMaterno" value="#{empresaMBean.empresa.apMaterno}"
                                         styleClass="txtCampoObligatorio" size="30" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="30"/>
                            </p:inputText>

                            <h:outputLabel for="itDni" value="DNI" styleClass="label"/>
                            <p:inputText id="itDni" value="#{empresaMBean.empresa.dni}" onkeypress="return fn_validaTecla('entero', this)"
                                         styleClass="txtCampoObligatorio" size="15" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="15"/>
                            </p:inputText>

                            <h:outputLabel for="itDireccion" value="DIRECCIÓN" styleClass="label"/>
                            <p:inputText id="itDireccion" value="#{empresaMBean.empresa.direccion}"
                                         styleClass="txtCampoObligatorio" size="50" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="50"/>
                            </p:inputText>

                            <h:outputLabel for="itEmailLaboral" value="E-MAIL LABORAL" styleClass="label"/>
                            <p:inputText id="itEmailLaboral" value="#{empresaMBean.empresa.emailLaboral}"
                                         styleClass="txtCampoObligatorio" size="40" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="50"/>
                            </p:inputText>

                            <h:outputLabel for="itEmailPersonal" value="E-MAIL PERSONAL" styleClass="label"/>
                            <p:inputText id="itEmailPersonal" value="#{empresaMBean.empresa.emailPersonal}"
                                         styleClass="txtCampoObligatorio" size="40" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="50"/>
                            </p:inputText>

                            <h:outputLabel for="itCargo" value="CARGO" styleClass="label"/>
                            <p:inputText id="itCargo" value="#{empresaMBean.empresa.cargo}"
                                         styleClass="txtCampoObligatorio" size="50" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="50"/>
                            </p:inputText>

                            <h:outputLabel for="itTelPersonal" value="TELÉFONO PERSONAL" styleClass="label"/>
                            <p:inputText id="itTelPersonal" value="#{empresaMBean.empresa.telefonoPersonal}" onkeypress="return fn_validaTecla('entero', this)"
                                         styleClass="txtCampoObligatorio" size="30" required="true" readonly="#{empresaMBean.accion == 3}">
                                <f:validateLength minimum="0" maximum="30"/>
                            </p:inputText>
                        </h:panelGrid>
                    </p:fieldset>

                    <f:facet name="footer">
                        <p:commandButton title="GUARDAR" ajax="false" icon="ui-icon ui-icon-disk"
                                         rendered="#{empresaMBean.accion != 3}" style="#{applicationMBean.estilosBtnBuscar}"
                                         value="GUARDAR" onclick="return confirm('ESTÁ SEGURO QUE DESEA REALIZAR LA OPERACIÓN');"
                                         action="#{empresaMBean.guardar}">
                        </p:commandButton>

                        <p:commandButton title="RETROCEDER" ajax="false" icon="ui-icon ui-icon-arrowreturnthick-1-w"
                                         immediate="true" style="#{applicationMBean.estilosBtnBuscar}"
                                         value="RETROCEDER" action="#{empresaMBean.retroceder}">
                        </p:commandButton>

                        <p:commandButton title="NUEVO" icon="ui-icon ui-icon-plus" rendered="#{empresaMBean.empresa.id != null}"
                                         value="NUEVO" style="#{applicationMBean.estilosBtnBuscar}"
                                         ajax="false"
                                         actionListener="#{empresaMBean.nuevo}">
                        </p:commandButton>
                    </f:facet>
                </p:panel>

                <p:panel id="pnlPrincipalDeta" header="DETALLE DE TAXISTAS" style="#{applicationMBean.estiloTitulo}" rendered="#{empresaMBean.empresa.id != null}">
                    <h:panelGrid id="pngTabla" columns="1">
                        <h:panelGrid columns="10" cellpadding="4">
                            <p:commandButton title="NUEVO TAXISTA"
                                             icon="ui-icon ui-icon-plus"
                                             style="#{applicationMBean.estilosBtnBuscar}"
                                             value="NUEVO TAXISTA"
                                             rendered="#{empresaMBean.accion != 3}" ajax="true"
                                             oncomplete="carDialogTaxista.show()"
                                             update=":tabPrincipal"
                                             action="#{empresaMBean.nuevoTaxista}">
                            </p:commandButton>
                        </h:panelGrid>
                        <p:dataTable id="tblPrincipalDeta" value="#{empresaMBean.listaTaxistas}" var="taxista" widgetVar="widTable"
                                     rowKey="#{auto.id}" emptyMessage="NO HAY REGISTROS" styleClass="estiloPanel">
                            <p:column style="text-align:center;">
                                <h:panelGrid columns="10" cellspacing="5" styleClass="estiloPanelGrid">
                                    <p:commandButton icon="ui-icon ui-icon-search" title="VER"
                                                     action="#{empresaMBean.verTaxista}" ajax="true"
                                                     update=":tabPrincipal" oncomplete="carDialogTaxista.show()">
                                        <f:setPropertyActionListener value="#{taxista}" target="#{empresaMBean.empresaDeta}"/>
                                    </p:commandButton>

                                    <p:commandButton icon="ui-icon ui-icon-pencil" title="EDITAR"
                                                     rendered="#{empresaMBean.accion != 3}" ajax="true"
                                                     update=":tabPrincipal" action="#{empresaMBean.editarTaxista}"
                                                     oncomplete="carDialogTaxista.show()">
                                        <f:setPropertyActionListener value="#{taxista}" target="#{empresaMBean.empresaDeta}"/>
                                    </p:commandButton>
                                </h:panelGrid>
                            </p:column>
                            <p:column headerText="ID" styleClass="general">
                                <h:outputText value="#{taxista.id}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="NOMBRES" styleClass="general">
                                <h:outputText value="#{taxista.nombres}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="APELLIDO PATERNO" styleClass="general">
                                <h:outputText value="#{taxista.apPaterno}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="APELLIDO MATERNO" styleClass="general">
                                <h:outputText value="#{taxista.apMaterno}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="DNI" styleClass="general">
                                <h:outputText value="#{taxista.dni}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="TELÉFONO" styleClass="general">
                                <h:outputText value="#{taxista.telefono}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="E-MAIL LABORAL" styleClass="general">
                                <h:outputText value="#{taxista.emailLaboral}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="NÚMERO DE BREVETE" styleClass="general">
                                <h:outputText value="#{taxista.nroBrevete}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="ESTADO" styleClass="general">
                                <h:outputText value="#{taxista.estadoTexto}" styleClass="general"/>
                            </p:column>
                        </p:dataTable>
                    </h:panelGrid>
                </p:panel>
            </h:form>
            <p:dialog id="dialogTaxista" header="DETALLE DEL TAXISTA" widgetVar="carDialogTaxista" resizable="false"
                      width="1200" height="420" modal="true">
                <p:messages id="msjDialogTaxista" showDetail="false" autoUpdate="true"/>
                <ui:include src="/pages/empr/empresa/empresaTaxista.xhtml"/>
            </p:dialog>
            <p:dialog id="dialogAuto" header="AUTOS" widgetVar="carDialogAuto" resizable="false"
                      width="700" height="200" modal="true">
                <p:messages id="msjDialogAuto" showDetail="false" autoUpdate="true"/>
                <ui:include src="/pages/empr/empresa/taxistaAuto.xhtml"/>
            </p:dialog>
            <p:dialog id="dialogServicio" header="SERVICIOS" widgetVar="carDialogServicio" resizable="false"
                      width="750" height="250" modal="true">
                <p:messages id="msjDialogServicio" showDetail="false" autoUpdate="true"/>
                <ui:include src="/pages/empr/empresa/taxistaServicio.xhtml"/>
            </p:dialog>
        </ui:define>
    </ui:composition>
</html>

